/*
 * Copyright (c) 2017,重庆阿莫比科技有限公司,All Rights Reserved.
 */
package com.wowocai.btchina.service;

import com.wowocai.btchina.entity.PagerEntity;
import com.wowocai.btchina.entity.WebTorrentEntity;

/**
 * <br/>
 * Date: 2017年3月17日 下午5:38:26 <br/>
 * 
 * @Author 刘建成
 * @Version
 */
public interface SearchEngineService {

    /**
     * 将数据从Mongo推送到ES
     * <br/>
     * 
     * @author 刘建成
     */
    void pushMongoToElasticsearch();

    /**
     * 将种子的VisitCount同步更新到ES中
     * <br/>
     * 
     * @author 刘建成
     */
    void syncVisitCountToEsByDate();

    /**
     * 根据infohash查找种子信息
     * <br/>
     * 
     * @author 刘建成
     * @param infohash
     * @return
     */
    WebTorrentEntity findTorrentByInfohash(String infohash);

    /**
     * 生成网站地图(取前一天的数据)
     * <br/>
     * 
     * @author 刘建成
     */
    void createSiteMap();

    /**
     * 向外部搜索引擎发送Ping请求
     * <br/>
     * 
     * @author 刘建成
     */
    void pingGoogle();

    /**
     * 
     * 搜索 <br/>
     * 
     * @author 刘建成
     * @param name 搜索的关键词
     * @param sort 排序字段，目前只支持一个字段
     * @param pageNo 跳转的页号
     * @param pageSize 每页显示条数
     * @return
     */
    PagerEntity<WebTorrentEntity> search(String name, String sort, int pageNo, int pageSize);
}
